/**
 * Author: xiekun
 * Date: 2024-05015
 * Description: 正则校验 
 **/
export class Regexp {

  /**
   * 身份证校验 
   */

  static idCardValid (value: any) {
    const regexp = /^[1-9]\d{5}(?:18|19|20)\d{2}(?:0[1-9]|10|11|12)(?:0[1-9]|[1-2]\d|30|31)\d{3}[\dXx]$/
    return regexp.test(value)
  }

  /**
   * 手机号码校验 
   */

  static phoneValid (value: any) {
    const regexp = /^(?:(?:\+|00)86)?1[3-9]\d{9}$/
    return regexp.test(value)
  }

  /**
   * 邮箱校验 
   */
  
  static emailValid (value: any) {
    const regexp = /^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/
    return regexp.test(value)
  }

  /**
   * 英文和数字 
   */
  
  static codeAndNumValid (value: any) {
    const regexp = /^[A-Za-z0-9]+$/
    return regexp.test(value)
  }
}